/**项目列表 */
import { type baseRespone, type pagenationRespone } from "../pubilcType";
export const getProjectList = () => {
  return new Promise<pagenationRespone<ProjectType[]>>((resolve, reject) => {
    setTimeout(function () {
      resolve({
        code: 200,
        rows: [
          {
            id: 0,
            projectSortNumber: 0,
            projectNumber: "string",
            projectName: "string",
            projectAmount: 0,
            projectProgress: "string",
            plannedStartDate: "2019-08-24T14:15:22.123Z",
            plannedEndDate: "2019-08-24T14:15:22.123Z",
            projectStatus: "string",
            projectTypeId: 0,
            projectSource: "string",
            isEstablished: 0,
            establishmentNumber: "string",
            establishmentStatus: "string",
            profitTarget: 0,
            projectDuration: 0,
            projectAddress: "string",
            newSignYear: "2019-08-24T14:15:22.123Z",
            isNewSign: 0,
            projectRemark: "string",
            projectLeader: "string",
            projectManager: "string",
            projectParticipants: "string",
            submissionPerson: "string",
            contractAmount: 0,
            invoiceReceived: 0,
            invoicePaid: 0,
            paymentReceived: 0,
            paymentPaid: 0,
            workOrderNumber: "string",
            workOrderStatus: "string",
            currentProjectPhase: "string",
            currentPhaseId: 0,
            projectTaskProgress: "string",
            projectOutput: 0,
            declaredOutput: 0,
            paymentNumber: "string",
            paymentStatus: "string",
            customerNumber: "string",
            customerName: "string",
            contactPerson: "string",
            contactInfo: "string",
            isOutsourced: 0,
            outsourceTotalCost: 0,
          },
          {
            id: 1,
            projectSortNumber: 0,
            projectNumber: "string",
            projectName: "string",
            projectAmount: 0,
            projectProgress: "string",
            plannedStartDate: "2019-08-24T14:15:22.123Z",
            plannedEndDate: "2019-08-24T14:15:22.123Z",
            projectStatus: "string",
            projectTypeId: 0,
            projectSource: "string",
            isEstablished: 0,
            establishmentNumber: "string",
            establishmentStatus: "string",
            profitTarget: 0,
            projectDuration: 0,
            projectAddress: "string",
            newSignYear: "2019-08-24T14:15:22.123Z",
            isNewSign: 0,
            projectRemark: "string",
            projectLeader: "string",
            projectManager: "string",
            projectParticipants: "string",
            submissionPerson: "string",
            contractAmount: 0,
            invoiceReceived: 0,
            invoicePaid: 0,
            paymentReceived: 0,
            paymentPaid: 0,
            workOrderNumber: "string",
            workOrderStatus: "string",
            currentProjectPhase: "string",
            currentPhaseId: 0,
            projectTaskProgress: "string",
            projectOutput: 0,
            declaredOutput: 0,
            paymentNumber: "string",
            paymentStatus: "string",
            customerNumber: "string",
            customerName: "string",
            contactPerson: "string",
            contactInfo: "string",
            isOutsourced: 0,
            outsourceTotalCost: 0,
          },
          {
            id: 2,
            projectSortNumber: 0,
            projectNumber: "string",
            projectName: "string",
            projectAmount: 0,
            projectProgress: "string",
            plannedStartDate: "2019-08-24T14:15:22.123Z",
            plannedEndDate: "2019-08-24T14:15:22.123Z",
            projectStatus: "string",
            projectTypeId: 0,
            projectSource: "string",
            isEstablished: 0,
            establishmentNumber: "string",
            establishmentStatus: "string",
            profitTarget: 0,
            projectDuration: 0,
            projectAddress: "string",
            newSignYear: "2019-08-24T14:15:22.123Z",
            isNewSign: 0,
            projectRemark: "string",
            projectLeader: "string",
            projectManager: "string",
            projectParticipants: "string",
            submissionPerson: "string",
            contractAmount: 0,
            invoiceReceived: 0,
            invoicePaid: 0,
            paymentReceived: 0,
            paymentPaid: 0,
            workOrderNumber: "string",
            workOrderStatus: "string",
            currentProjectPhase: "string",
            currentPhaseId: 0,
            projectTaskProgress: "string",
            projectOutput: 0,
            declaredOutput: 0,
            paymentNumber: "string",
            paymentStatus: "string",
            customerNumber: "string",
            customerName: "string",
            contactPerson: "string",
            contactInfo: "string",
            isOutsourced: 0,
            outsourceTotalCost: 0,
          },
        ],
        total: 3,
        msg: "获取成功",
      });
    }, 200);
  });
};

export interface ProjectType {
  id: number;
  projectSortNumber: number;
  projectNumber: string;
  projectName: string;
  projectAmount: number;
  projectProgress: string;
  plannedStartDate: string; // ISO 8601 格式的字符串
  plannedEndDate: string; // ISO 8601 格式的字符串
  projectStatus: string;
  projectTypeId: number;
  projectSource: string;
  isEstablished: number;
  establishmentNumber: string;
  establishmentStatus: string;
  profitTarget: number;
  projectDuration: number;
  projectAddress: string;
  newSignYear: string; // ISO 8601 格式的字符串
  isNewSign: number;
  projectRemark: string;
  projectLeader: string;
  projectManager: string;
  projectParticipants: string;
  submissionPerson: string;
  contractAmount: number;
  invoiceReceived: number;
  invoicePaid: number;
  paymentReceived: number;
  paymentPaid: number;
  workOrderNumber: string;
  workOrderStatus: string;
  currentProjectPhase: string;
  currentPhaseId: number;
  projectTaskProgress: string;
  projectOutput: number;
  declaredOutput: number;
  paymentNumber: string;
  paymentStatus: string;
  customerNumber: string;
  customerName: string;
  contactPerson: string;
  contactInfo: string;
  isOutsourced: number;
  outsourceTotalCost: number;
}
